Hypertext Transfer Protocol (HTTP) streaming is currently the most popular method of delivering content over the Internet. For live events, content is made available progressively through constant duration segments. The segment availability follows a timeline that indicates when each successive segment becomes available in the HTTP server.
Dynamic Adaptive Streaming Over Hypertext Transfer Protocol (DASH) is a standard that implements HTTP streaming DASH announces the segment availability in a Media Presentation Description (MPD). The MPD is a segment availability timeline that announces the segments, the times segments are available, and the size of the segments.
In current systems, the MPD is provided to a receiver device via Over-the-Air (OTA) delivery. In the provided MPD, the segment availability times may correspond to the encoder output times of the network side encoder generating the segments. Because the segment availability times may correspond to the encoder output times, the availability times may not account for differences in actual segment availability to a DASH client running on a receiver device, such as delivery path delays, receiver device processing delays, or receiver device clock drift. Thus, the announced availability times in current MPDs may not correspond to the actual times when segments will be available to a DASH client.
A similar problem occurs when DASH content is delivered through Content Delivery Networks (CDNs). The DASH content is created at a source encoder, however the availability time of the segment at remote CDN servers may be different at different CDN serving points.